/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package endereco.classes;

import java.util.ArrayList;
import java.util.List;
import javax.swing.table.AbstractTableModel;

/**
 *
 * @author Acer
 */
public class EnderecoTableModel extends AbstractTableModel{

    private List<Endereco> listaEnderecos;
    private String[] colunas ={"Tipo", "Logradouro", "CEP", "Bairro", "Cidade", "UF"};

    public EnderecoTableModel(List<Endereco> listaEnderecos) {
        this.listaEnderecos = listaEnderecos;
    }

    public EnderecoTableModel() {
        listaEnderecos = new ArrayList<Endereco>();
    }

    public int getRowCount() {
        return listaEnderecos.size();
    }

    public int getColumnCount() {
        return colunas.length;
    }

    public Object getValueAt(int rowIndex, int columnIndex) {
         Endereco endereco = listaEnderecos.get(rowIndex);
         if (columnIndex==0){
             return endereco.getTipoLogradouro();
         }else if (columnIndex==1){
             return endereco.getLogradouro();
         }else if (columnIndex==2){
             return endereco.getCep();
         }else if (columnIndex==3){
             return endereco.getBairro();
         }else if (columnIndex==4){
             return endereco.getCidade();
         } else return endereco.getEstado();
    }

    public  void adicionar(Endereco endereco){
        listaEnderecos.add(endereco);
    }

    public void adicionar(List<Endereco> enderecos){
        listaEnderecos.addAll(enderecos);
    }

    @Override
    public String getColumnName(int column) {
        return colunas[column];
    }

    @Override
    public Class<?> getColumnClass(int columnIndex) {
        if (columnIndex==0){
             return String.class;
         }else if (columnIndex==1){
             return String.class;
         }else if (columnIndex==2){
             return String.class;
         }else if (columnIndex==3){
             return String.class;
         }else if (columnIndex==4){
             return String.class;
         }else return String.class;
    }

    public Endereco getEndereco(int linha){
        return  listaEnderecos.get(linha);
    }

}
